<cfprocessingdirective suppresswhitespace="yes">
<!--- 
***** REVISION *****
10/18/06: This is a new tag
 --->
 	
<cfswitch expression="#thisTag.executionMode#">
	<cfcase value="start">
		<cfset tag = "password"/>

		<cfsavecontent variable="attributeCombination">
		<strong>Available Attributes are:</strong>
		<LI>Required attributes: NAME or ID or FORLABEL.</LI>
		<LI>Optional attributes: LABEL, CLASSLABEL, BREAK, CSS.</LI>
		</cfsavecontent>

		<cfinclude template="inc/start.cfm"/>
		
		<cfif not structKeyExists(attributes,'name')>
			<cfif structKeyExists(attributes, 'id')>
				<cfset parent.setValue('id','name',attributes)/>
			<cfelseif structKeyExists(config, 'forLabel')>
				<cfset parent.setValue('forLabel','name',config,attributes)/>
			<cfelseif isDefined("request.ui.form.#tag#.html") and structKeyExists(request.ui.form[tag].html,'name')>
				<cfset attributes.name = request.ui.form[tag].html.name/>
			<cfelse>
				<cfset attributes.name = "password"/>
			</cfif>			
		</cfif>
		<cfset parent.setValue('name','',attributes)/>

		<!--- *** CONFIG VARIABLES *** --->
		<cfset config = parent.getConfig(tag,attributes,request,parent)/>
		
		<!--- *** HTML VARIABLES *** --->
		<cfset attributes = parent.getHtml(tag,attributes,request)/>

		<cfif config.css>
			<cfset parent.config.cssLabelCode = true/>
			<cfparam name="config.classLabel" default="label"/>
		</cfif>
		<cfparam name="attributes.id" default="#attributes.name#"/>
		<cfparam name="config.forLabel" default="#attributes.id#"/>
		<cfif not structKeyExists(config,'label')>
			<cfset config.label = trim(replaceList(attributes.name,'_,nm,id,cd,txt',' ,Name,,,'))/>
		</cfif>
	</cfcase>
	
	
	<cfcase value="end">
		<cfinclude template="inc/field.cfm"/>
	</cfcase>
</cfswitch>
</cfprocessingdirective>